IMPLEMENTATION OF SORTING ALGORITHMS
ABSTRACT
This research work took theoretical and empirical studies that have been done over the past years on sorting algorithms and its variants. The study includes a comparative sorting algorithms (i.e. Bubble sort, shell sort, straight insertion sort quick sort, simple sort etc.) the same criteria such as coding memory space used meaning efficiency as in the time used by the computer argument on the number of comparison. Data flow diagrams and process to evaluate the performance of these sorting techniques. The programming language used to implement these sorting algorithms is BASIC.
The various chapter in this research work is logically arranged to reflect in each stage in the research process, the adopting chapters ranges from introduction literature review, systems investigation/analysis, system programming/ implementation to the researchers, recommendations and conclusion. The coded program and its output are also attached.
TABLE OF CONTENT
Title Page
Certification
Dedication
Acknowledgement
Abstract
Table Of Content
CHAPTER ONE
1.0 INTRODUCTION
1.1 Background Of The Study
1.2 Statement Of Problem
1.3 Objective/Purpose Of The Study
1.4 Significance Of The Study
1.5 Scope And Limitation Of The Study
1.6 Organization Of Work
CHAPTER TWO
2.0 REVIEW OF RELATED LITERATURE TO THE TOPIC
2.0 A Reflective View On Sorting
2.1 Classification Of Sorting
2.2 Internal Sorting Techniques
2.2.1 Bubble Sort
2.2.2 Heap Sort
2.2.3 Insertion Sort
2.2.4 Merge Sort
2.2.5 Quick Sort
2.2.6 Selection Sort
2.2.7 Shell Sort
2.2.8 Simple Sort
2.3 External Sorting Techniques
2.3.1 Method Of External Sort
2.3.2 Disk Sort
2.3.3 Strategies For Choosing Sorting Method
CHAPTER THREE
3.0 SYSTEM ANALYSIS AND INVESTIGATION
3.1 Analysis Of Sorting Algorithms
3.2 Memory Space Allocation
3.3 Comparative Study Of The Algorithm
3.4 Research Methodology
CHAPTER FOUR
4.0 PROGRAM DESIGN AND IMPLEMENTATION
4.1 Discussion Of Findings
4.2 Design Of Logic Of Sorting Algorithms
4.3 Pseudo Code Of Logic Design
4.4 Program Flowchart
CHAPTER FIVE
5.0 RECOMMENDATION AND CONCLUSION
5.1 Problems Encountered During The Research Work
5.2 Conclusion
5.3 Recommendation
Reference
CHAPTER ONE
1.0 INTRODUCTION
1.1 BACKGROUND OF STUDY
The need of information in general
Mangers need information to perform their function and not data. Information is to data what is finished product is to raw materials used in producing it. Information is the manger in his decision-making activity.
Information is to business system what blood circulatory system is to human body. When information fails to reach any part of the organization system, due to structural deficiency, that part become anemia and soon becomes a liability to the rest of the supper system. This is why the system theory states that every system is held together by information exchange.
For information to retain its quality resources it must have the following qualities: Brief/Detail, Accurate, Rare/Scare, Timeliness/Appropriateness, Frequency/Understanding and Transferable.
Computers are virtually used in all areas of life. It is difficult to see any aspect of the society that has not been affected by some form of computerization. Computer is used in preparing company patrol, record customers sales on items bought from a shop switching of telephone class when lines are overload, give detail of dentists, patients, analyze blood samples, control application in homes etc.
Therefore, computers can be in all sectors in the society such as business, health, and industry education, national development. Before the advent of computer manual method was used in data processing and calculators and the human brain were the only thing used.
This manual method is time wasting and mistake oriented. At present the use of computer in data processing has gone a long way in increasing the credibility of the system. The computer is able to process data quickly; making available information on stock levels slow moving items or trend in demand.
A business establishment equally apply computer in the preparation of payroll. When computer is used for this purpose, it helps to ensure efficiency and accuracy in calculation. In science research like medical, it is used for analysis data produced from experiment for instance in the trial of drugs. It is also a diagnostic tool in hospital, clinic and keeping patient.
In every organization especially an open system or social organization, information is very essential. Since what organization needed is information and not data, there is urgency that proper information should be diffused or be circulated within the organization.
Having defined information as the processed data that is meant to be used by the approved user. It is of paramount demand that no decision be taken in an organization without proper consultation of the computer data processing centre. Therefore, any organization that takes decision without computer analysis is prone to error.
In some real life application of computer, example in sorting information in a given order, often known as automation. Information is sorted in alphabetical order, numerical order either ascending or descending. The use of computer in sorting has eliminated the manually performed method, which is prone to error, mistake and time wasting hence the need for its automation. This is aimed at the automation of this manual method hence eliminating and minimizing the error encountered.
1.2 STATEMENT OF PROBLEM
The method of organization of data in the computer is the main focus of this work. Also the, mismanagement of computer memory and time is another problem to look into for solution. It could be recalled that the necessary and efficiency of sorting activities cannot be over emphasized.
However, this project research is aimed at taking a comprehensive look on some sorting algorithms in BASIC programming languages to access their performance. The above mentioned high-level programming language are used or considered for the implementation of the sorting concept.
1.3 OBJECTIVE/PURPOSE OF THE STUDY
This deals with the presentation of information or data in an appreciable from and also to minimize the time used in searching for items. However, it can be seen that a well-sorted or organized file enhances easy searching of data while unsorted one will pose little or great problem to locate a given item in a large list. However, the comparison process will be based on the following:
(i) Memory space used
(ii) Number of comparison made during sorting process
(iii) Coding based on the sorting algorithm
(iv) Computer.
1.4 SIGNIFICANCE OF THE STUDY
Sorting algorithm was designed to enable the people and the society to be acquainted with arrangement of data and item. Above topic of discussion will make the society to determine and know their stand in the arrangement and organization of data in the memory location and also make proper use and utilization of the computer time.
1.5 SCOPES AND LIMITATION OF THE STUDY
As was stated earlier, it is quite understood that there are lots of sorting technique. This project research will be focusing on the implication of some algorithms. It will also be critically base on the following.
a. The use of linear list (array) as the data structure.
b. Insertion sort, bubble sort, selection sort etc.
c. The use of BASIC as the programming language for coding implementation.
This research work was limited by some ups and downs, which was encountered at the process of carrying out the research. Some of the problems that limited the finding of research work are as follow:
(a) Lack of resourceful library for material that would aid further investigations and finding.
(b) Limited time to carryout more research as the research work is coupled with the other academic statues.
(c) Financial instability, which constituted more to the limitation as related to the movement from one place to another for materials for further aids towards the topic of discussion.
1.6 ORGANIZATION OF WORK
This is a project work that is written to analyze the implementation of sorting algorithm. This project is divided into five chapters. Chapter one is the introduction; chapter two is the literature review of the project topic under discussion. Chapter three is the research methodology; chapter four is the analysis of the technical procedures and various methods of data presentation/programs while chapter five is the summary conclusion and recommendation.